/**************************************************************************************
*		              外部中断0实验												  *
实现现象：下载程序后按下K3按键可以对D1小灯状态取反。
注意事项：无。																				  
***************************************************************************************/
#include "reg52.h"

typedef unsigned int u16;
typedef unsigned char u8;

sbit k3=P3^2;  //定义按键K3
sbit led=P2^0;	 //定义P20口是led

void delay(u16 i) //延时函数，i=1时，大约延时10us
{
	while(i--);	
}

void main()
{	
	//设置INT0
	IT0=1; //跳变沿出发方式（下降沿）
	EX0=1; //打开INT0的中断允许。	
	EA=1; //打开总中断	
	while(1);		
}

void Int0()	interrupt 0 //外部中断0的中断函数
{
	delay(1000); //延时消抖
	if(k3==0) //这里为什么要再检测一下？运行到这个函数不就是按下引起的中断吗？
	{
		led=~led;
	}
}
